/*
 * Copyright (c) 2017. 深圳一七科技. All rights reserved.
 */

package com.yiqi.liebang.feature.order.contract;

import com.suozhang.framework.framework.BasePresenter;
import com.suozhang.framework.framework.BaseView;
import com.yiqi.liebang.entity.bo.OrderBo;
import com.yiqi.liebang.entity.bo.PageBo;
import com.yiqi.liebang.entity.bo.TopicBo;
import com.yiqi.liebang.entity.bo.TopicOrderBo;

import java.util.List;

import io.reactivex.Observable;

/**
 * LIJUWEN
 *
 * @email yiyayiyayaoljw@gmail.com
 * @date 2018/7/11 9:06
 */
public interface TopicContract {

    interface Model {

        Observable<List<TopicOrderBo>> getTopicOrderList(PageBo pageBo);

    }

    interface View extends BaseView {


        void showTopicOrderListSuccess(List<TopicOrderBo> workBoPageData);

        void showTopicOrderListError(String error);

        void showTopicOrderListMoreSuccess(List<TopicOrderBo> msg);

        void showTopicOrderListMoreError(String msg);

        void showOrderListEmpty();
    }


    interface Presenter extends BasePresenter {

        void getTopicOrderList(
                int type,
                int pageIndex,
                int pageSize
        );

        void getTopicOrderListMore(
                int type,
                int pageIndex,
                int pageSize
        );
    }
}
